import exampleData from '@/components/SimpleMindMap/exampleData'
import { storeLocalConfig } from '@/components/SimpleMindMap/api'
const state = {
  mindMapData: null, // 思维导图数据
  isHandleLocalFile: false, // 是否操作的是本地文件
  localConfig: {
    // 本地配置
    isZenMode: false, // 是否是禅模式
    // 是否开启节点富文本
    openNodeRichText: false,
    // 鼠标行为
    useLeftKeySelectionRightKeyDrag: false
  },
  activeSidebar: '' // 当前显示的侧边栏
}

const mutations = {
  /**
   * @Author: 王林
   * @Date: 2021-04-10 14:50:01
   * @Desc: 设置思维导图数据
   */
  setMindMapData(state, data) {
    state.mindMapData = data
  },

  /**
   * javascript comment
   * @Author: 王林
   * @Date: 2022-09-24 13:55:38
   * @Desc: 设置操作本地文件标志位
   */
  setIsHandleLocalFile(state, data) {
    state.isHandleLocalFile = data
  },

  /**
   * javascript comment
   * @Author: 王林25
   * @Date: 2022-11-14 18:42:47
   * @Desc: 设置本地配置
   */
  setLocalConfig(state, data) {
    state.localConfig = {
      ...state.localConfig,
      ...data
    }
    storeLocalConfig(state.localConfig)
  },

  /**
   * javascript comment
   * @Author: 王林25
   * @Date: 2022-11-15 19:25:26
   * @Desc: 设置当前显示的侧边栏
   */
  setActiveSidebar(state, data) {
    state.activeSidebar = data
  }
}

const actions = {
  /**
   * @Author: 王林
   * @Date: 2021-04-10 14:50:40
   * @Desc: 设置初始思维导图数据
   */
  getUserMindMapData(ctx) {
    try {
      let { data } = {
        data: {
          data: {
            mindMapData: exampleData
          }
        }
      }
      ctx.commit('setMindMapData', data.data)
    } catch (error) {
      console.log(error)
    }
  }
}

export default {
  state,
  mutations,
  actions
}
